<?php
class GuildCompetitionTaskVo extends SzAbstractMySqlVo
{

    private $guildId;
    private $pos;
    private $taskId;
    private $needItem;
    private $needProcess;
    private $timeRange;
    private $process;
    private $userId;
    private $state;
    private $handleTime;
    private $cdTime;
    private $createTime;
    private $updateTime;
    private $endTime;

    /**
     * Initialize GuildCompetitionTaskVo.
     *
     * @param $guildId
     * @param $pos
     * @param $taskId
     * @param $needItem
     * @param $needProcess
     * @param $timeRange
     * @param $process
     * @param $userId
     * @param $state
     * @param $handleTime
     * @param $cdTime
     * @param $createTime
     * @param $updateTime
     * @param $endTime
     * @param boolean $isInsert default false, means for now this vo is initialized not for insert process
     * @return GuildCompetitionTaskVo
     */
    public function __construct($guildId, $pos, $taskId, $needItem, $needProcess, $timeRange, $process, $userId, $state, $handleTime, $cdTime, $createTime, $updateTime, $endTime, $isInsert = false) {
        $this->guildId = $guildId;
        $this->pos = $pos;
        $this->taskId = $taskId;
        $this->needItem = $needItem;
        $this->needProcess = $needProcess;
        $this->timeRange = $timeRange;
        $this->process = $process;
        $this->userId = $userId;
        $this->state = $state;
        $this->handleTime = $handleTime;
        $this->cdTime = $cdTime;
        $this->createTime = $createTime;
        $this->updateTime = $updateTime;
        $this->endTime = $endTime;

        $this->isInsert = $isInsert;
        $this->voClassName = 'GuildCompetitionTaskVo';
        $this->ormName = 'GuildCompetitionTask';
    }

    /**
     * @see SzAbstractVo::toArray
     */
    public function toArray($needEncode = false)
    {
        return array(
            'guildId' => $this->getGuildId(),
            'pos' => $this->getPos(),
            'taskId' => $this->getTaskId(),
            'needItem' => $this->getNeedItem(),
            'needProcess' => $this->getNeedProcess(),
            'timeRange' => $this->getTimeRange(),
            'process' => $this->getProcess(),
            'userId' => $this->getUserId(),
            'state' => $this->getState(),
            'handleTime' => $this->getHandleTime(),
            'cdTime' => $this->getCdTime(),
            'createTime' => $this->getCreateTime(),
            'updateTime' => $this->getUpdateTime(),
            'endTime' => $this->getEndTime(),
        );
    }

    /**
     * @see SzAbstractVo::toEntireArray
     */
    public function toEntireArray($needEncode = false)
    {
        return array(
            'guildId' => $this->getGuildId(),
            'pos' => $this->getPos(),
            'taskId' => $this->getTaskId(),
            'needItem' => $this->getNeedItem(),
            'needProcess' => $this->getNeedProcess(),
            'timeRange' => $this->getTimeRange(),
            'process' => $this->getProcess(),
            'userId' => $this->getUserId(),
            'state' => $this->getState(),
            'handleTime' => $this->getHandleTime(),
            'cdTime' => $this->getCdTime(),
            'createTime' => $this->getCreateTime(),
            'updateTime' => $this->getUpdateTime(),
            'endTime' => $this->getEndTime(),
        );
    }

    /**
     * @see SzAbstractVo::toPureArray
     */
    public function toPureArray()
    {
        return array(
            $this->getGuildId(),
            $this->getPos(),
            $this->getTaskId(),
            $this->getNeedItem(),
            $this->getNeedProcess(),
            $this->getTimeRange(),
            $this->getProcess(),
            $this->getUserId(),
            $this->getState(),
            $this->getHandleTime(),
            $this->getCdTime(),
            $this->getCreateTime(),
            $this->getUpdateTime(),
            $this->getEndTime(),
        );
    }

    public function getGuildId()
    {
        return $this->guildId;
    }

    public function setGuildId($val)
    {
        $this->saveColumnStatus(0, $this->guildId);
        $this->guildId = $val;
    }

    public function getPos()
    {
        return $this->pos;
    }

    public function setPos($val)
    {
        $this->saveColumnStatus(1, $this->pos);
        $this->pos = $val;
    }

    public function getTaskId()
    {
        return $this->taskId;
    }

    public function setTaskId($val)
    {
        $this->saveColumnStatus(2, $this->taskId);
        $this->taskId = $val;
    }

    public function getNeedItem()
    {
        return $this->needItem;
    }

    public function setNeedItem($val)
    {
        $this->saveColumnStatus(3, $this->needItem);
        $this->needItem = $val;
    }

    public function getNeedProcess()
    {
        return $this->needProcess;
    }

    public function setNeedProcess($val)
    {
        $this->saveColumnStatus(4, $this->needProcess);
        $this->needProcess = $val;
    }

    public function getTimeRange()
    {
        return $this->timeRange;
    }

    public function setTimeRange($val)
    {
        $this->saveColumnStatus(5, $this->timeRange);
        $this->timeRange = $val;
    }

    public function getProcess()
    {
        return $this->process;
    }

    public function setProcess($val)
    {
        $this->saveColumnStatus(6, $this->process);
        $this->process = $val;
    }

    public function getUserId()
    {
        return $this->userId;
    }

    public function setUserId($val)
    {
        $this->saveColumnStatus(7, $this->userId);
        $this->userId = $val;
    }

    public function getState()
    {
        return $this->state;
    }

    public function setState($val)
    {
        $this->saveColumnStatus(8, $this->state);
        $this->state = $val;
    }

    public function getHandleTime()
    {
        return $this->handleTime;
    }

    public function setHandleTime($val)
    {
        $this->saveColumnStatus(9, $this->handleTime);
        $this->handleTime = $val;
    }

    public function getCdTime()
    {
        return $this->cdTime;
    }

    public function setCdTime($val)
    {
        $this->saveColumnStatus(10, $this->cdTime);
        $this->cdTime = $val;
    }

    public function getCreateTime()
    {
        return $this->createTime;
    }

    public function setCreateTime($val)
    {
        $this->saveColumnStatus(11, $this->createTime);
        $this->createTime = $val;
    }

    public function getUpdateTime()
    {
        return $this->updateTime;
    }

    public function setUpdateTime($val)
    {
        $this->saveColumnStatus(12, $this->updateTime);
        $this->updateTime = $val;
    }

    public function getEndTime()
    {
        return $this->endTime;
    }

    public function setEndTime($val)
    {
        $this->saveColumnStatus(13, $this->endTime);
        $this->endTime = $val;
    }

}